在 Node JS 中生成唯一 ID

您所在的位置:网站首页 js 生成gif 在 Node JS 中生成唯一 ID

在 Node JS 中生成唯一 ID

#在 Node JS 中生成唯一 ID| 来源: 网络整理| 查看: 265

当前位置:主页 > 学无止境 > 编程语言 > WEB前端 编程语言 网络 算法 操作系统 数据库 在 Node JS 中生成唯一 ID 作者:迹忆客 最近更新:2023/03/11 浏览次数:

在 Microsoft 版本中也称为全局唯一标识符,通用唯一标识符是用于创建唯一 ID 的 128 位标签。

这些 ID 通常用于识别数据库中的实体,以唯一地记录个人身份。在这种情况下使用时,这些 ID 通常被称为数据库键。

如何在 Node JS 中生成唯一 ID

世界上任何人生成两个相似的 UUID 的可能性几乎为零。这就是为什么它们被称为普遍独特的原因。

互联网工程任务组提出了一份名为 RFC 的出版物,该出版物定义了一组标准,用于创建生成这些 UUID 以保持其在全球范围内的唯一性的算法。

有几个 Node js 模块用于在 Node JS 中创建 UUID。但是,最常用的包是 UUID 包。

我们可以使用下面的 npm 包安装程序命令安装 UUID 包。

npm install uuid

这个包可以与 Node js 8、10、12 和 14 一起使用,但它也是跨平台的,这意味着我们可以使用 ES6 syntax 或 CommonJS 来安全地生成加密的大量随机数。

现在,由于 UUID 包支持 RFC4122 版本 1、3、4 和 5 UUID,这意味着我们可以根据需要生成不同类型的 UUID。

版本 1 是基于时间的 UUID,它使用随机数、日期时间值和设备的 MAC 地址的组合来生成通用唯一 ID。

第 4 版 UUID 可能是最简单的 ID,因为它们是从字符 a 到 z 和 0 到 9 生成的。

另一方面,版本 3 和 5 UUID 使用预先存在的命名空间日期和名称数据来生成随机的字母数字 UUID。

使用 CommonJS 语法,我们可以生成 UUID 的版本 4 和版本 1,如下所示。

const { v4: uuidv4 } = require('uuid'); const {v1: uuidv1 } = require('uuid'); console.log(uuidv4()); console.log(uuidv1());

输出结果:

ddd3b16f-2b6c-4fef-9f21-aaa52d1f983c 69b42bc0-7a15-11ec-a689-5191cd2179b0

或者,我们可以使用 ES6 模块语法而不是 CommonJS,并且仍然生成任何版本的 UUID,如下所示。

请记住在 package.json 中设置 type: module 以使用此语法。

import { v4 as uuidv4 } from 'uuid'; import {v1 as uuidv1 } from 'uuid'; console.log(uuidv4()); console.log(uuidv1());

输出结果:

9cae2569-010e-4a69-867c-65601234e2a5 0b2567c0-7a17-11ec-9b81-19257147bda6

我们还可以使用从 Node js 的 4.17.0 版添加的加密模块生成 UUID。

在 Node js 的早期版本中,除了使用诸如 UUID 包之类的外部包之外,没有办法在本地生成 UUID。

使用这个模块,我们可以使用 randomUUID options 方法生成多达 128 个 RFC4122 版本 4 UUIDs,只需在我们的程序顶部简单地要求 crypto 模块。

默认情况下,Node js 将缓存足够的数据以使用此方法生成多达 128 个版本 4 UUID。但是,我们也可以通过将禁用 EntropyCache 的对象设置为 true 来生成不缓存的 UUID。

const crypto = require('crypto'); console.log(crypto.randomUUID());

输出结果:

7a2e09e9-4059-438d-89cf-c2badb76ed3c

上一篇:Node JS 中的 settimeout

下一篇:在 Node JS 中写入文件

相关文章 扩展 Node JS 应用

发布时间:2023/03/12 浏览次数:66 分类:编程语言

本教程演示如何扩展 Node JS 应用程序

在 NodeJS 中格式化日期

发布时间:2023/03/12 浏览次数:55 分类:编程语言

本教程演示了如何在 NodeJS 中格式化日期。

将 NodeJS 升级到最新版本

发布时间:2023/03/12 浏览次数:52 分类:编程语言

本教程演示如何将 nodejs 升级到最新版本

检查已安装的 Node.js 版本

发布时间:2023/03/12 浏览次数:127 分类:编程语言

本教程演示如何从命令行检查已安装的 Node.js 版本

在 Node.js 中休眠

发布时间:2023/03/12 浏览次数:183 分类:编程语言

本教程演示了如何使用 setTimeout 和 setInterval 方法在 Node.js 中安排代码的执行。

更新 Node.js

发布时间:2023/03/12 浏览次数:156 分类:编程语言

本教程演示如何在 Windows、macOS 和 Linux 中更新 Node.js。

在 Node.js 中解析 Json

发布时间:2023/03/12 浏览次数:186 分类:编程语言

本教程演示如何在 Node.js 中解析 json

NodeJS 中的日志记录

发布时间:2023/03/12 浏览次数:163 分类:编程语言

本教程演示如何在 NodeJS 中创建和存储日志

在 Node.js 中创建和存储配置

发布时间:2023/03/12 浏览次数:69 分类:编程语言

本教程演示了如何在 Node.js 中创建和存储配置。

转载请发邮件至 [email protected] 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3